#pragma once
#include <cstdint>
#include <optional>

using int64 = int64_t;
using int32 = int32_t;
using int16 = int16_t;
using int8 = int8_t;
using uint64 = uint64_t;
using uint32 = uint32_t;
using uint16 = uint16_t;
using uint8 = uint8_t;
using QWORD = uint64;
using byte = uint8;

std::optional<std::pair<uint64, uint64>> get_module_addrs(uint32 pid);
std::optional<uint64> get_module_base(uint32 pid);
uint64 module_base();

uint64 r8(uint64 addr);
uint32 r4(uint64 addr);

